# 作者: 赵若云
# 2025年02月18日14时37分16秒
# 3478783573@qq.com

def use_len_count():
    """
    数据统计和remove
    :return:
    """
    name_list = ["张三", "李四", "王五", "王小二", "张三", "张三"]
    # len(length 长度) 函数可以统计列表中元素的总数
    list_len = len(name_list)
    print("列表中包含 %d 个元素" % list_len)
    # count 方法可以统计列表中某一个数据出现的次数
    count = name_list.count("张三")
    print("张三出现了 %d 次" % count)
    # 从列表中删除第一次出现的数据，如果数据不存在，程序会报错
    name_list.remove("张三")
    # name_list.remove("赵若云")  # ValueError: list.remove(x): x not in list
    print(name_list)


# 排序
def use_sort():
    """
    使用排序，数据类型必须一致
    :return:
    """
    name_list = ["zhangsan", "lisi", "wangwu", "wangxiaoer"]
    num_list = [6, 8, 4, 1, 10]

    # 升序
    name_list.sort()
    num_list.sort()

    print(name_list)
    print(num_list)

    # 降序
    name_list.sort(reverse=True)
    num_list.sort(reverse=True)

    print(name_list)
    print(num_list)


def use_reverse():
    """
    逆序练习
    :return:
    """
    name_list = ["zhangsan", "lisi", "wangwu", "wangxiaoer"]
    num_list = [6, 8, 4, 1, 10]

    # 逆序（反转）不排序只逆置
    name_list.reverse()
    num_list.reverse()

    print(name_list)
    print(num_list)


def use_iter():
    """
    练习遍历
    :return:
    """
    name_list = ["zhangsan", "lisi", "wangwu", "wangxiaoer"]
    for name in name_list:
        print(name, end=' ')
    print()
    i = 0
    while i < len(name_list):  # 删列表元素用while遍历
        print(name_list[i], end=' ')
        i += 1
    print()


# use_len_count()
# use_sort()
# use_reverse()
use_iter()
